package com.rc.saas.tenant.model.acct;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rc.saas.tenant.base.BaseModel;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
@ExcelIgnoreUnannotated
public class TenantOperatorAccountRecord extends BaseModel {
    private Long accountRecordId;

    private String tenantCode;

    private String tenantOperatorCode;

    private Long billOrderId;

    private String billOrderNum;

    private Long withdrawOrderId;

    private String accountType;
    @ExcelProperty(value = "交易订单号", index = 2)
    private String outTradeNo;

    private String transactionId;

    private String fundTransactionId;

    private String recordType;
    @ExcelProperty(value = "变动金额", index = 4)
    private BigDecimal amount;
    @ExcelProperty(value = "变动后余额", index = 5)
    private BigDecimal result;

    private String remark;

    private String createdBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "变动时间", index = 6)
    private Date createdTime;

    private String lastUpdatedBy;

    private Date lastUpdatedTime;

    public Long getAccountRecordId() {
        return accountRecordId;
    }

    public void setAccountRecordId(Long accountRecordId) {
        this.accountRecordId = accountRecordId;
    }

    @Override
    public String getTenantCode() {
        return tenantCode;
    }

    @Override
    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    @Override
    public String getTenantOperatorCode() {
        return tenantOperatorCode;
    }

    @Override
    public void setTenantOperatorCode(String tenantOperatorCode) {
        this.tenantOperatorCode = tenantOperatorCode;
    }

    public Long getBillOrderId() {
        return billOrderId;
    }

    public void setBillOrderId(Long billOrderId) {
        this.billOrderId = billOrderId;
    }

    public String getBillOrderNum() {
        return billOrderNum;
    }

    public void setBillOrderNum(String billOrderNum) {
        this.billOrderNum = billOrderNum;
    }

    public Long getWithdrawOrderId() {
        return withdrawOrderId;
    }

    public void setWithdrawOrderId(Long withdrawOrderId) {
        this.withdrawOrderId = withdrawOrderId;
    }

    public String getAccountType() {
        return accountType;
    }

    public void setAccountType(String accountType) {
        this.accountType = accountType;
    }

    public String getOutTradeNo() {
        return outTradeNo;
    }

    public void setOutTradeNo(String outTradeNo) {
        this.outTradeNo = outTradeNo;
    }

    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    public String getFundTransactionId() {
        return fundTransactionId;
    }

    public void setFundTransactionId(String fundTransactionId) {
        this.fundTransactionId = fundTransactionId;
    }

    public String getRecordType() {
        return recordType;
    }

    public void setRecordType(String recordType) {
        this.recordType = recordType;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getResult() {
        return result;
    }

    public void setResult(BigDecimal result) {
        this.result = result;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    @Override
    public String getCreatedBy() {
        return createdBy;
    }

    @Override
    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    @Override
    public Date getCreatedTime() {
        return createdTime;
    }

    @Override
    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    @Override
    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    @Override
    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    @Override
    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    @Override
    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }
}